package com.haiyou.common.constant;

import lombok.AllArgsConstructor;
import lombok.Getter;

/**
 * @author huangzl
 * 积分常量
 */
public class PointConstant {

    public static final String thumbs_up = "thumbs_up";
    public static final String cancel_thumbs_up = "cancel_thumbs_up";
    public static final String post_message = "post_message";
    public static final String reply_message = "reply_message";
    public static final String post_article = "post_article";

    /**
     * 患者积分
     */
    @Getter
    @AllArgsConstructor
    public enum Patient {
        /**
         * 患者积分获得来源
         */
        first_register(100, "首次注册奖励"),
        recommend(100, "患者推荐患者"),
        upload_report(200, "上传报告单一次"),
        consult_once(10, "咨询一次"),
        thumbs_up(10, "社区点赞"),
        cancel_thumbs_up(-10, "取消点赞"),
        post_message(30, "发表留言"),
        reply_message(10, "回复留言"),
        sign_for_3_days(10, "连续签到3天"),
        sign_for_7_days(30, "连续签到7天"),
        sign_for_15_days(100, "连续签到15天"),
        sign_for_30_days(200, "连续签到30天");

        private Integer point;
        private String remark;
    }

    /**
     * 助手积分
     */
    @Getter
    @AllArgsConstructor
    public enum Helper {
        /**
         * 助手积分获得来源
         */
        first_register(100, "首次注册奖励"),
        recommend(100, "助手推荐助手"),
        upload_report(200, "上传报告单一次"),
        consult_once(10, "咨询一次"),
        thumbs_up(10, "社区点赞"),
        cancel_thumbs_up(-10, "取消点赞"),
        post_message(30, "发表留言"),
        sign_for_3_days(10, "连续签到3天"),
        sign_for_7_days(30, "连续签到7天"),
        sign_for_15_days(100, "连续签到15天"),
        sign_for_30_days(200, "连续签到30天");

        private Integer point;
        private String remark;
    }

    /**
     * 医生积分
     */
    @Getter
    @AllArgsConstructor
    public enum Doctor {
        /**
         * 医生积分获得来源
         */
        first_register(200, "首次注册奖励"),
        answer_patient(300, "回答患者问诊"),
        upload_report(200, "上传报告单一次"),
        post_article(500, "发表文章"),
        thumbs_up(20, "社区点赞"),
        cancel_thumbs_up(-20, "取消点赞"),
        post_message(50, "发表留言"),
        reply_message(20, "回复留言"),
        medicine_once(200, "开药一次"),
        sign_for_3_days(10, "连续签到3天"),
        sign_for_7_days(30, "连续签到7天"),
        sign_for_15_days(100, "连续签到15天");
        private Integer point;
        private String remark;
    }

    /**
     * 药店积分
     */
    @Getter
    @AllArgsConstructor
    public enum Drugstore {
        /**
         * 药店积分获得来源
         */
        first_register(50, "首次注册奖励"),
        consult_once(10, "咨询一次"),
        upload_report(200, "上传报告单一次"),
        thumbs_up(10, "社区点赞"),
        cancel_thumbs_up(-10, "取消点赞"),
        post_message(30, "发表留言"),
        reply_message(10, "回复留言"),
        sign_for_3_days(10, "连续签到3天"),
        sign_for_7_days(30, "连续签到7天"),
        sign_for_15_days(100, "连续签到15天"),
        sign_for_30_days(200, "连续签到30天");
        private Integer point;
        private String remark;
    }


}
